package Git2024_5_23;

public class AOP {
    /**
     * AOP
     * 面向切面编程
     * 一种思想 不改变源代码的情况下扩展新的功能
     *
     * 作用
     * 代码重用 将重用的功能抽象出来 形成可以重用的模块
     * 简化开发 将关注点从业务逻辑中分离出来
     * 解耦 将不同的关注点分离
     * 提高系统可扩展性 后续改变时只需要改变AOP内容而不改变原代码
     *
     * 流程
     * 1.手动添加依赖
     * 2.创建切面类 添加 @Aspect 注解
     * 3.编写切入点表达式 使用各种通知注解对目标函数进行功能增强
     *
     * 什么是切入点表达式
     * 切入点表达式指定了哪一些方法需要被植入增强逻辑
     */
    /*-------------------------------------------------------------------------------------*/
    // 权限修饰符 *
    // 方法返回值 *
    // 包名随意 *..
    // 类名随意 *
    // 方法名随意 *
    // 标识参数随意 (..)
    // ** *...*.*(..)

    /**
     * Linux操作系统
     * 1.操作系统
     *  主流操作系统有三大类
     *  1.windows[微软] windows95/98 ->...-> win7/8/10/11
     *  2.Linux[开源,三大主流Linux系统(前三个),从属于不同公司]
     *      2.1 CentOS[今年马上停止维护了(但是还能使用 只是无人进行维护更新) 于是写了新版本Rocky Linux]
     *      2.2 RedHat(红帽公司) 免费使用 付费定制
     *      2.3 Ubuntu(乌班图)
     *      2.4 Rocky Linux
     *      2.5 OpenEuler(华为)
     *      2.6 中标
     *      2.7 麒麟..
     *  常规操作命令都是一样的 但是装包的方式 配置文件的位置有可能不同
     *  3.Unix[Linux是在Unix基础之上衍生出的 常规命令相似]
     *        MacOS(类Unix)
     *    优势: Linux Unix 操作系统长时间运行不会出现明显卡顿 内部结构比 Windows 稳定

     *         因此 大多数公司都采用 Linux 作为服务器的操作系统
     *         少数使用windows Service版 以更好的与部分功能兼容 或部署只能在windows系统中部署的内容
     */
    // VMware 虚拟机软件 以虚拟方式进行操作
    //该软件默认没有任何操作系统
    /**
     * Rocky Linux安装进虚拟机流程
     * 1.新建虚拟机 选择配置信息
     * 2.下载系统 进入官网 下载系统.iso镜像文件 相当于系统盘/系统镜像文件
     * 3.进入虚拟机的 CD/DVD 光驱选项安装系统 -- 类似于光盘放入光驱
     * 4.下载完后左侧选择GNOME桌面 右侧选择适合自己的选项
     * 5.虚拟机检查完依赖位置后
     * 6.开始在虚拟机里安装系统 在安装过程中
     */
    // Linux常用快捷键
    /**
     * 终端字体放大
     * ctrl shift +
     * ctrl -
     */
    // 用户 root
    /**
     * root
     * 超级用户
     * 拥有最高权限 甚至可以将自身的操作系统删除
     */
    /**
     * Linux的终端结构是一个倒挂树结构 最顶端是根 在根下可以创建分支及其子分支
     */
    /**
     * 终端命令[区分大小写]
     * 1.查询当前所处位置/路径: pwd
     *  在终端中 所有路径都是正斜杠"/"开头表示的 例如 /root
     *  表示当前路径为根下的root目录 其中root是root用户的主目录/家目录
     *  主目录/家目录:
     *      root用户 /root
     *      非root用户 /home/用户名
     *
     * 2.查看当前路径下的内容: ls [查看的内容不包含隐藏文件]
     *      显示的内容:
     *              蓝色为文件夹
     *              黑色为文件
     *              红色为压缩包
     * 3.ls -a [a: all 所有 包含隐藏文件]
     *
     * 4.终端文件/文件夹显示方式: ls -l [l:long 以长格式显示内容]
     * 命令格式:[命令关键字[空格]-选项]
     * 文件格式:显示的文件大小默认为字节
     *
     * 5.文件大小显示格式: ls -lh 或 ls -l -h
     *
     * 6.清屏: ctrl + l 或 clear命令
     *
     * 7.在当前路径创建目录: mkdir 目录名1 目录名2 目录名3..[目录名之间用空格隔开]
     *
     * 8.在其他路径创建目录: 通过绝对路径创建 例如 mkdir /root/桌面/ssm
     * 中英文输入法 可以通过shift切换
     * 9.在已有的目录中创建多层子目录: 无法直接通过递归方式创建 需要添加一个选项:-p
     *      例如 mkdir -p ssm/a/b/c/d --- 相对路径
     * 相对路径:不以根开头的路径 且相对路径 相对的是当前路径
     * 绝对路径:以根("/")开头的路径 比如"/root/..."
     *
     * 10.cd命令,切换目录,例如进入/c路径下[有两种方式]:
     *      10.1 完整路径: cd /root/ssm/a/b/c/
     *           回到家目录: cd /root/(最后的"/"可以不加)(命令行左边的最后一个提示符号为"~"飘号)
     *      10.2 相对路径: cd ssm/a/b/c/
     *           回到主目录: cd ~
     *      10.3 切换到上一级目录: cd ..
     *      10.4 切换到上两级/三级/多级: cd ../..切换到上两级目录 以此类推
     *      10.5 返回主目录: cd 回车
     *      10.6 返回上一个路径 cd -
     *           不是上一级 而是在本次路径和上一个路径之间来回穿梭
     * 上下箭头 能翻出之前执行过的所有命令
     * 终止当前命令的执行 直接切换到下一行命令行: ctrl c
     *
     * 11.删除: rm命令 (remove的缩写) -r recusion(递归) 父目录名
     *         11.1 rm -r 目录名 并且在每层提示词后输入 空格 + y (yes的缩写)
     *              直到进入最后一层 确认删除提示后输入 空格 + y 才能一层层向外层删除 直到删除完父目录名
     *         11.2 删除根目录下所有文件 rm -rf *(根下所有文件)
     *         11.3 删除根目录 rm -rf /(根)
     *          注意: 该命令一旦执行 就不会停止 虽然有的内容因为权限限制无法删除 但是会跳过继续执行 直到删除完所有有权限能删除的内容
     *         11.4.1 rm -rf /目录名1/ + 空格 + /目录名2/...
     *                force(强制)
     *         11.4.2 rm -rf 文件名 --- 删除文件
     * 12.创建文件: touch命令 touch 文件名.txt
     *                     创建多个文件 用空格隔开文件名即可
     * 13.打开文件(两种编辑器): vim 文件名 [进入文件内部后,按`i`才能写入内容]
     *                          保存时 按`esc`退出插入模式才能输入`:wq`存储并退出
     *                      gedit gedit 文件名 回车即可打开文件
     * 14.查看文件内容: cat 文件名 --- 查看文件全部内容
     *               head -3 文件名 --- 查看从头开始的前三行
     *               tail -2 文件名 --- 查看文件最后2行的内容
     * 11.关机: shutdown now 关机
     *         reboot 关机
     *         init 0 关机
     *         init 6 重启
     */
}
